package system.base.b02;

import pub.itf.IPubParam;
import pub.utils.TreeUtils;
import system.model.SmBaseType;

import com.agile.jfinal.controller.CoreController;
import com.jfinal.ext.render.DwzRender;

/**
 * 数据类型参数设置
 * @author qiutian  2013年12月18日
 */
public class SmBaseTypeController extends CoreController {

	/**
	 * 默认方法查询数据
	 */
	public void index(){
		
		
		//生成全部数据的树形菜单
		try {
			setAttr("tree",TreeUtils.createTreeHtml(new SmBaseType().getList(),getRequest().getContextPath()+"/smBaseType/viewPage"));
			renderJsp("/WEB-INF/jsp/system/base/b02/sm_base_type_list.jsp");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			render(DwzRender.error("页面加载失败，请联系管理员"));
		}
	}

	/**
	 * 保存数据
	 */
	public void saveModel(){

		try {
			SmBaseType smBaseType = getModel(SmBaseType.class);
			if(smBaseType.get(smBaseType.getPrimaryKey())==null){   //新增保存 
				smBaseType.addSmBaseTypeModel();
			}else{ //修改
				smBaseType.save();
			}
			DwzRender dwz = new DwzRender();
			dwz.message("操作成功");
			dwz.callbackType("closeCurrent");
			dwz.navTabId("sm_base_type_list");
			render(dwz);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			render(DwzRender.error());
		}
	}
	
	/**
	 * 转入新增页面
	 */
	public void addPage(){
		SmBaseType smBaseType = getModel(SmBaseType.class); //获取选中数据
		
		String pk_base_type = smBaseType.getPrimaryValue();
		
		if(pk_base_type.equals("")){
			pk_base_type = IPubParam.pk_parent_dafultValue;
		}
		
		smBaseType.set(smBaseType.PK_PARENT, pk_base_type); //将选中数据的主键作为新数据的父主键

		smBaseType.set(smBaseType.getPrimaryKey(), null);
		setAttr("smBaseType", smBaseType);
		renderJsp("/WEB-INF/jsp/system/base/b02/sm_base_type_form.jsp");
	}
	
	/**
	 * 转入修改页面
	 */
	public void editPage(){
		setAttr("smBaseType", getModel(SmBaseType.class).queryById());
		renderJsp("/WEB-INF/jsp/system/base/b02/sm_base_type_form.jsp");
		
	}
	
	/**
	 * 转入查看页面
	 */
	public void viewPage(){
		setAttr("smBaseType", new SmBaseType().set(SmBaseType.PK_BASE_TYPE, getPara(SmBaseType.PK_BASE_TYPE)).queryById());
		renderJsp("/WEB-INF/jsp/system/base/b02/sm_base_type_view.jsp");
	}
	
	/**
	 * 删除数据
	 */
	public void delModel(){
		getModel(SmBaseType.class).delSmBaseTypeModel();
		DwzRender dwz = new DwzRender();
		dwz.message("操作成功");
		dwz.navTabId("sm_base_type_list");
		render(dwz);
	}
}
